Expand description
Rust friendly bindings to the various *nix system functions.
Modules are structured according to the C header file that they would be defined in.
Features
Nix uses the following Cargo features to enable optional functionality. They may be enabled in any combination.
acct
- Process accountingaio
- POSIX AIOdir
- Stuff relating to directory iterationenv
- Manipulate environment variablesevent
- Event-driven APIs, likekqueue
andepoll
feature
- Query characteristics of the OS at runtimefs
- File system functionalityhostname
- Get and set the system’s hostnameinotify
- Linux’sinotify
file system notification APIioctl
- Theioctl
syscall, and wrappers for my specific instanceskmod
- Load and unload kernel modulesmman
- Stuff relating to memory managementmount
- Mount and unmount file systemsmqueue
- POSIX message queuesnet
- Networking-related functionalitypersonality
- Set the process execution domainpoll
- APIs likepoll
andselect
process
- Stuff relating to running processespthread
- POSIX threadsptrace
- Process tracing and debuggingquota
- File system quotasreboot
- Reboot the systemresource
- Process resource limitssched
- Manipulate process’s schedulingsocket
- Sockets, whether for networking or local usesignal
- Send and receive signals to processesterm
- Terminal control APIstime
- Query the operating system’s clocksucontext
- User thread contextuio
- Vectored I/Ouser
- Stuff relating to users and groupszerocopy
- APIs likesendfile
andcopy_file_range
Re-exports
pub use libc;
Modules
- dir
dir
List directory contents - env
env
Environment variables - features
feature
Feature tests for OS functionality - ifaddrs
net
Query network interface addresses - kmod
kmod
Load and unload kernel modules. - mount
mount
Mount file systems - mqueue
mqueue
Posix Message Queue functions - net
net
Functionality involving network interfaces - poll
poll
Wait for events to trigger on specific file descriptors - pty
term
Create master and slave virtual pseudo-terminals (PTYs) - sched
sched
Execution scheduling - Mostly platform-specific functionality
- time
time
- ucontext
ucontext
- Safe wrappers around functions found in libc “unistd.h” header
Macros
- cmsg_space
socket
anduio
Create a buffer large enough for storing some control messages as returned byrecvmsg
. - ioctl_none
ioctl
Generates a wrapper function for an ioctl that passes no data to the kernel. - ioctl_none_bad
ioctl
Generates a wrapper function for a “bad” ioctl that passes no data to the kernel. - ioctl_read
ioctl
Generates a wrapper function for an ioctl that reads data from the kernel. - ioctl_read_bad
ioctl
Generates a wrapper function for a “bad” ioctl that reads data from the kernel. - ioctl_read_buf
ioctl
Generates a wrapper function for an ioctl that reads an array of elements from the kernel. - ioctl_readwrite
ioctl
Generates a wrapper function for an ioctl that reads and writes data to the kernel. - ioctl_readwrite_bad
ioctl
Generates a wrapper function for a “bad” ioctl that reads and writes data to the kernel. - ioctl_readwrite_buf
ioctl
Generates a wrapper function for an ioctl that reads and writes an array of elements to the kernel. - ioctl_write_buf
ioctl
Generates a wrapper function for an ioctl that writes an array of elements to the kernel. - ioctl_write_int
ioctl
Generates a wrapper function for a ioctl that writes an integer to the kernel. - ioctl_write_int_bad
ioctl
Generates a wrapper function for a “bad” ioctl that writes an integer to the kernel. - ioctl_write_ptr
ioctl
Generates a wrapper function for an ioctl that writes data through a pointer to the kernel. - ioctl_write_ptr_bad
ioctl
Generates a wrapper function for a “bad” ioctl that writes data through a pointer to the kernel. - request_code_none
ioctl
Generate an ioctl request code for a command that passes no data. - request_code_read
ioctl
Generate an ioctl request code for a command that reads. - Generate an ioctl request code for a command that reads and writes.
- request_code_write
ioctl
Generate an ioctl request code for a command that writes.
Traits
- Common trait used to represent file system paths by many Nix functions.
Type Aliases
- Nix’s main error type.
- Nix Result Type